package com.qixiaobao.system.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.qixiaobao.common.core.domain.BaseEntity;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @Description 费用 实体类
 * @Author yangxm
 * @Date 2025/6/24 14:45
 */
@Data
public class Charge extends BaseEntity {

    private Long id;
    /** 方案ID */
    private Long customerMealId;
    /** ID号 */
    private Long detailId;
    /** 订单编号 */
    private String qxbOrderNo;
    /** 保单号 */
    private String insureNo;
    /** 供应商id */
    private Long supplyId;
    /** 供应商名称 */
    private String supplyName;
    /** 供应商简称 */
    private String supplyShortName;
    /** 匹配后供应商简称 */
    private String toSupplyShortName;
    /** 客户名称 */
    private String customerName;
    /** 被保人 */
    private String insurant;
    /** 付款单位 */
    private Long payCompanyId;
    private String payCompanyName;
    /** 实际付款单位 */
    private Long actualPayCompanyId;
    private String actualPayCompanyName;
    /** 套餐名称 */
    private String mealName;
    private String mealNameVal;
    /** 伤残比例 */
    private String maimRatio;
    private String maimRatioVal;
    /** 职业类别 */
    private String jobType;
    private String jobTypeVal;
    /** 投保周期 */
    private String insurePeriod;
    private String insurePeriodVal;
    /** 生效起期 */
    @JsonFormat(pattern = "yyyy/MM/dd HH:mm:ss")
    private Date gurantBeginTime;
    /** 生效止期 */
    @JsonFormat(pattern = "yyyy/MM/dd HH:mm:ss")
    private Date gurantEndTime;
    /** 推送时间 */
    @JsonFormat(pattern = "yyyy/MM/dd HH:mm:ss")
    private Date pushTime;
    /** 增员人数 */
    private Integer addNum;
    /** 减员人数 */
    private Integer minusNum;
    /** 投保人数 */
    private String insurePerson;
    /** 作废状态 */
    private Integer abandonFlag;
    private String abandonFlagVal;
    /** 保险费 */
    private BigDecimal copeInsureFeePrice;
    /** 费用总计 */
    private BigDecimal copeInsureFee;
    /** 手续费率 */
    private BigDecimal serviceRate;
    /** 财务计入 */
    private String financeReckon;
    private String financeReckonVal;
    /** 保单结算时间 */
    @JsonFormat(pattern = "yyyy/MM/dd HH:mm:ss")
    private Date insureFeeSettleTime;
    /** 回单编号 */
    private String billNums;
    /** 付款时间 */
    private String transDateTimes;
    /** 回单金额 */
    private String transAmounts;
    /** 手续费结算状态（0未结算1待收款2已结算） */
    private String handlingFeeSettle;
}
